package org.dromara.third.convert.enterprise.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 工艺信息数据传输对象（DTO）
 * 用于封装工艺相关的基本信息
 */
@Data
public class ProcessDTO {

    /**
     * 1. 雪花主键
     * 说明：全局唯一标识，采用雪花算法生成的Long类型ID
     */
    private Long id;

    /**
     * 2. 工艺名称
     * 说明：工艺的具体名称，不可为空
     */
    private String gymc;

    /**
     * 3. 工艺类别
     * 说明：工艺所属的类别，不可为空
     */
    private String gylb;

    /**
     * 4. 是否重点监督
     * 说明：标识该工艺是否需要重点监督，不可为空
     */
    private String zdjdNy;

    /**
     * 5. 简介
     * 说明：工艺的简要介绍，不可为空
     */
    private String jj;

    /**
     * 6. 危险特性
     * 说明：该工艺具有的危险特性描述，不可为空
     */
    private String wxtx;

    /**
     * 7. 安全控制基本要求
     * 说明：对该工艺进行安全控制的基本要求，不可为空
     */
    private String aqkzyq;

    /**
     * 8. 应采用的控制方式
     * 说明：针对该工艺应采用的控制方式，不可为空
     */
    private String kzfs;

    /**
     * 9. 删除标志
     * 说明：0-正常（未删除），1-已删除；不可为空，默认值建议设为"0"
     */
    private String delFlag;

    /**
     * 10. 创建时间
     * 说明：数据创建时间，格式为yyyy-MM-dd HH:mm:ss，不可为空
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String createTime;

    /**
     * 11. 创建人名称
     * 说明：数据创建者的姓名，不可为空
     */
    private Long createBy;

    /**
     * 12. 最后修改时间
     * 说明：数据最后更新时间，格式为yyyy-MM-dd HH:mm:ss；新创建数据与createTime相同，不可为空
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    /**
     * 13. 更新人名称
     * 说明：数据最后更新者的姓名，不可为空
     */
    private Long updateBy;
}
